#ifndef _HCC_ERROR_CODE_MID_JT808_H_
#define _HCC_ERROR_CODE_MID_JT808_H_

#include "ofc/ofc_types.h"
#include "hcc/hcc_error_code.h"
#include "hcc/hcc_error_code_mid.h"

#ifdef __cplusplus
extern "C" {
#endif

// 不含行号的错误码生成
#define HCC_MAKE_MID_JT808_ERROR(error_code) (int)HCC_MAKE_MID_WARE_ERROR(kHccMidWareJt808, error_code, HCC_ERROR_LEVEL_ERROR)
// 含行号的错误码生成
#define HCC_MAKE_MID_JT808_ERROR_LINE(error_code) (int)HCC_ERROR(HCC_MAKE_MID_WARE_ERROR(kHccMidWareJt808, error_code, HCC_ERROR_LEVEL_ERROR))


/**
 * Jt808模块定义:
 */
enum THccMidJt808ErrorCodeEnumTag
{
	kHccMidJt808Success	=	HCC_ERROR_SUCCESS,			///< 成功,没有错误
	kHccMidJt808ParamInvalid	=	HCC_MAKE_MID_JT808_ERROR(1),			///<参数无效
	kHccMidJt808SendNotReady	=	HCC_MAKE_MID_JT808_ERROR(2),			///<发送未就绪
	kHccMidJt808UnescapeError	=	HCC_MAKE_MID_JT808_ERROR(3),			///<未转义转换错误
	kHccMidJt808EscapeError	=	HCC_MAKE_MID_JT808_ERROR(4),			///<转义转换错误
	kHccMidJt808SendError	=	HCC_MAKE_MID_JT808_ERROR(5),			///<发送错误
	kHccMidJt808AddListError	=	HCC_MAKE_MID_JT808_ERROR(6),			///<增加到list错误
	kHccMidJt808MemAllocError	=	HCC_MAKE_MID_JT808_ERROR(7),			///<内存分配失败
	kHccMidJt808MemEncodeError	=	HCC_MAKE_MID_JT808_ERROR(8),			///<编码失败
	kHccMidJt808MemDecodeError	=	HCC_MAKE_MID_JT808_ERROR(9),			///<解码失败
};
typedef enum THccMidJt808ErrorCodeEnumTag THccMidJt808ErrorCodeEnum;


typedef Int32 THccMidJt808ErrorCodeEnumLine;
#define kHccMidJt808SuccessLine	HCC_ERROR_SUCCESS	///< 成功,没有错误
#define kHccMidJt808ParamInvalidLine	HCC_MAKE_MID_JT808_ERROR_LINE(1)	///<参数无效
#define kHccMidJt808SendNotReadyLine	HCC_MAKE_MID_JT808_ERROR_LINE(2)	///<发送未就绪
#define kHccMidJt808UnescapeErrorLine	HCC_MAKE_MID_JT808_ERROR_LINE(3)	///<未转义转换错误
#define kHccMidJt808EscapeErrorLine	HCC_MAKE_MID_JT808_ERROR_LINE(4)	///<转义转换错误
#define kHccMidJt808SendErrorLine	HCC_MAKE_MID_JT808_ERROR_LINE(5)	///<发送错误
#define kHccMidJt808AddListErrorLine	HCC_MAKE_MID_JT808_ERROR_LINE(6)	///<增加到list错误
#define kHccMidJt808MemAllocErrorLine	HCC_MAKE_MID_JT808_ERROR_LINE(7)	///<内存分配失败
#define kHccMidJt808MemEncodeErrorLine	HCC_MAKE_MID_JT808_ERROR_LINE(8)	///<编码失败
#define kHccMidJt808MemDecodeErrorLine	HCC_MAKE_MID_JT808_ERROR_LINE(9)	///<解码失败

//旧版本适配补丁
#define kHccMidJt808CodeSuccess kHccMidJt808Success


#ifdef __cplusplus
}  // extern "C"
#endif

#endif // _HCC_ERROR_CODE_MID_JT808_H_
/**
 * @
 */
